package com.itaming.lycheeframework.support.utils;

import lombok.experimental.UtilityClass;

import java.util.TimeZone;

/**
 * TimeZone工具类
 *
 * @author A.Ming
 */
@UtilityClass
public class TimeZoneUtil {

    /**
     * 获取时区
     *
     * <p>
     * 参数为 {@code null} 时返回 JVM 默认时区，参考：{@link #getDefault()}
     *
     * @param timeZone 时区
     * @return 时区
     */
    public static TimeZone defaultIfNull(TimeZone timeZone) {
        return timeZone != null ? timeZone : getDefault();
    }

    /**
     * 获取 JVM 默认时区
     *
     * <p>
     * 受以下启动参数影响：
     * <blockquote><pre>
     * -Duser.timezone=Asia/Shanghai
     * </pre></blockquote>
     *
     * @return JVM 默认时区
     */
    public static TimeZone getDefault() {
        return TimeZone.getDefault();
    }

}
